package cn.sumpu.app.guoguojie.dao;

import java.util.List;
import java.util.Map;

import cn.sumpu.app.guoguojie.domain.Bonus;
import cn.sumpu.app.guoguojie.domain.BonusApply;
import cn.sumpu.app.guoguojie.domain.Doing;
import cn.sumpu.app.guoguojie.domain.DoingPictorial;
import cn.sumpu.app.guoguojie.domain.Member;
import cn.sumpu.app.guoguojie.exception.AppBusinessException;

public interface BonusDao {
	
	//添加红利
	void addBonus(Bonus bonus)throws AppBusinessException;
	//更新红利
	void updateBonusById(Bonus bonus)throws AppBusinessException;
	//修改红利申请
	void updateBonusApplyById(BonusApply bonusApply)throws AppBusinessException;
	//删除红利
	void deleteBonusById(String bonusId)throws AppBusinessException;
	
	//在后台查询红利申请的会员
	List<BonusApply> getBonusApplyAll(Map<String,Object> map) throws AppBusinessException;
	//在后台查询红利申请的会员总量
	Integer getBonusApplyCount(Map<String,Object> map) throws AppBusinessException;
	
	
	
	
	public List<Bonus> getBonusList(Map<String,Object> map) throws AppBusinessException;
	
	public int getBonusListCount(Map<String,Object> map) throws AppBusinessException;
	public List<Member> getApplyMember(Map<String,Object> map) throws AppBusinessException;
	
	public List<Doing> getDoingByBonus(Map<String,Object> map) throws AppBusinessException;
	
	public int getDoingByBonusCount(Map<String,Object> map) throws AppBusinessException;
	
	public void updateViewAmount(Map<String,Object> map) throws AppBusinessException;
	
	public void updateApplyNums(Map<String,Object> map) throws AppBusinessException;
	
	public void insertBonusApply(BonusApply bonusApply)throws AppBusinessException;
	
	public List<BonusApply> getBonusApply(Map<String,Object> map)throws AppBusinessException;
	
	public List<Bonus> getCanApply(Map<String,Object> map)throws AppBusinessException;
	
	public List<BonusApply> getApplyNow(Map<String,Object> map)throws AppBusinessException;
	
	public Bonus getIndexBonus()throws AppBusinessException;
	
	public List<DoingPictorial> getIndexBonusReply()throws AppBusinessException;
}
